#ifndef DRAWING_HPP
#define DRAWING_HPP

#include <QtOpenGL/QGLWidget>
#include <string>
#include <vector>
#include "Parameter.hpp"

using std::vector;
using std::string;

class Drawing : public QGLWidget
{
	Q_OBJECT
public:
	explicit Drawing(QWidget *parent = 0);
	void initializeGL();
	UserParameter *uipara;
	InputParameter *inpara;
private:
	float    cameraorientation[16];
	float    u[3],v[3],n[3];
	float    translate[3];
	float    rotation[3];
	QSize sizeHint() const;
	void paintGL();
	void resizeGL(int width, int height);
	void CameraRotation();
public slots:
	void reset();
	void refresh();
};

#endif // DRAWING_HPP
